// pages/personal/personal.js
import request from '../../utils/request'
let startY=0
let moveY=0
let moveDistance=0
Page({

  /**
   * 页面的初始数据
   */
  data: {
    coverTransform:'translateY(0)',
    coverTransition:'',
    userInfo:{},//存放用户信息
    recentPlayList:[],//用户的播放记录
  },
  // 手指点击事件
  handleTouchStart(event){
    // 清除之前的过渡效果
    this.setData({
      coverTransition:''
    })
    // console.log('start')
    // 获取手指其实坐标
    startY=event.touches[0].clientY
  },

  // 手指移动事件
  handleTouchMove(event){
    // console.log('move')
    moveY=event.touches[0].clientY

    // 计算手指移动距离
    moveDistance=moveY-startY
    // 不向上走
    if (moveDistance<0) {
      return
    }
    // 向下走最大距离是八十
    if (moveDistance>=80) {
      moveDistance=80
    }
    this.setData({
      coverTransform:`translateY(${moveDistance}rpx)`
    })
  },

  // 手指离开事件
  handleTouchEnd(){
    // console.log('end')
    // 动态更新数据 还原
    this.setData({
      coverTransform:`translateY(0)`,
      coverTransition:'transform 0.5s linear'
    })
  },

  // 跳转至登录页面
  toLogin(){
    // 判断用户是否已经登录(随便看一个属性如nickname是否为true，true说明已经登录，直接返回)
    if (this.data.userInfo.nickname) {
      return
    }
    wx.navigateTo({
      url: '/pages/login/login',
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 读取本地用户的信息
    let userInfo=wx.getStorageSync('userInfo')
    if (userInfo) {//用户登录
      // 更新userInfo
      this.setData({
        userInfo
      })

      // 发请求获取用户播放记录
      this.getRecentPlayData(this.data.userInfo.userId)
    }
  },
  
  // 获取用户播放记录功能函数
  async getRecentPlayData(userId){
    let result=await request('/user/record',{uid:userId,type:0})
    let index=0
    // 给每一项添加一个id值，用map方法进行加工
    let recentPlayList=result.allData.splice(0,10).map(item=>{
      item.id=index++
      return item
    })
    this.setData({
      recentPlayList
    })
  },



   /* 生命周期函数--监听页面初次渲染完成 */
  
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})